package com.yuyue.demo1;

import org.apache.curator.framework.CuratorFramework;
import org.apache.zookeeper.CreateMode;

/**
 *  创建节点示例
 *  1.基本创建:create().forPath("")
 *  2.创建节点，并指定数据:create().forPath("", data)
 *  3.创建节点，指定数据，并指定类型:create().withMode(CreateMode.XXX).forPath("", data)
 *  4.创建多级节点:create().creatingParentsIfNeeded().forPath("")
 */
public class CreateDemo {
    public static void main(String[] args) throws Exception {
        ConnectDemo connectDemo = new ConnectDemo();
        // 打开连接，并获取连接对象
        CuratorFramework client = connectDemo.connectByBuild();

        // 1.基本创建
        String path = client.create().forPath("/app/node1");
        System.out.println("创建node1成功" + path);

        // 2.创建节点，并指定数据
        path = client.create().forPath("/app/node2", "node2".getBytes());
        System.out.println("创建node2成功" + path);

        // 3.创建节点，指定数据，并指定类型(CreateMode枚举类)
        path = client.create().withMode(CreateMode.EPHEMERAL).forPath("/app/node3", "node3".getBytes());
        System.out.println("创建node3成功" + path);

        // 4.创建多级节点
        path = client.create().creatingParentsIfNeeded().forPath("/app/node4/node41/node411");
        System.out.println("创建node4成功" + path);

        // 关闭连接
        connectDemo.close(client);
    }
}
